import { asyncRoutes, constantRoutes } from '@/router'
const state = {
    routes: constantRoutes // 默认静态路由表
}

const mutations = {
    // otherRoutes登录成功后, 需要添加的新路由
    setRoutes(state, otherRoutes) {
      // 静态路由基础上, 累加其他权限路由
      state.routes = [...constantRoutes, ...otherRoutes]
    }
}
// const actions = {
//     // 根据用户的权限 通过匹配 动态路由表里面的name  作比较 进行筛选动态路由
//     // 定义筛选动态路由的方法名
//     filterRouter({ commit }, menus) {
//         const otherRoutes = asyncRoutes.filter(item => {
//             menus.includes(item.children[0].name)
//             // if (menus.includes(item.children[0].name)) {
//             //     return true
//             // } else {
//             //     return false
//             // }
//         })
//         commit('setRoutes', asyncRoutes)
//         return otherRoutes
//     }
// }
const actions = {
    // 筛选路由权限
    filterRoutes(context, menus) {
        const otherRoutes = asyncRoutes.filter(item => {
        // 如果路由模块的首页name, 在menus数组中包含, 就是这个模块开放
        if (menus.includes(item.children[0].name)) {
          return true
        } else {
          return false
        }
      })
      context.commit('setRoutes', otherRoutes)
      return otherRoutes
    }
  }

export default {
    namespaced: true,
    state,
    mutations,
    actions

  }

